package ir.smartlab.audiotest; import java.io.File; import java.io.IOException; import com.example.audiotest.R; import android.app.Activity; import android.content.Intent; import android.media.MediaPlayer; import android.media.MediaPlayer.OnCompletionListener; import android.media.MediaPlayer.OnErrorListener; import android.media.MediaPlayer.OnPreparedListener; import android.net.Uri; import android.os.Bundle; import android.os.Environment; import android.view.View; import android.widget.SeekBar; import android.widget.SeekBar.OnSeekBarChangeListener; public class MainActivity extends Activity { MediaPlayer mediaPlayer; SeekBar seekBar; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); seekBar = (SeekBar) findViewById(R.id.seekBar); seekBar.setOnSeekBarChangeListener(new OnSeekBarChangeListener() { @Override public void onStopTrackingTouch(SeekBar seekBar) { } @Override public void onStartTrackingTouch(SeekBar seekBar) { } @Override public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) { mediaPlayer.seekTo(progress); } }); mediaPlayer = MediaPlayer.create(this, R.raw.kalimba); mediaPlayer.setOnCompletionListener(new OnCompletionListener() { @Override public void onCompletion(MediaPlayer mp) { } }); mediaPlayer.setOnErrorListener(new OnErrorListener() { @Override public boolean onError(MediaPlayer mp, int what, int extra) { return false; } }); mediaPlayer.setOnPreparedListener(new OnPreparedListener() { @Override public void onPrepared(MediaPlayer mp) { seekBar.setMax(mp.getDuration()); mp.start(); } }); } public void playMusic(View v) { try { mediaPlayer.prepare(); } catch (IllegalStateException | IOException e) { e.printStackTrace(); } } public void stopMusic(View v) { if( mediaPlayer.isPlaying()) { mediaPlayer.stop(); } } public void playWithDefaultPlayer(View v) { String sdCard = Environment.getExternalStorageDirectory().getAbsolutePath(); File audioFile = new File(sdCard.concat("/Download/kalimba.mp3")); Uri uri = Uri.fromFile(audioFile); Intent i = new Intent(Intent.ACTION_VIEW); i.setDataAndType(uri, "audio/mp3"); startActivity(i); } }